package com.example.musicaiap.di

import com.example.musicaiap.data.repository.FakeMusicRepository
import com.example.musicaiap.data.repository.MusicRepository
import com.example.musicaiap.data.repository.RoomMusicRepository
import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton

/**
 * 仓库模块，提供仓库接口的实现
 */
@Module
@InstallIn(SingletonComponent::class)
abstract class RepositoryModule {
    
    /**
     * 将RoomMusicRepository绑定到MusicRepository接口
     * 使用Room数据库实现持久化存储
     */
    @Binds
    @Singleton
    abstract fun bindMusicRepository(
        roomMusicRepository: RoomMusicRepository
    ): MusicRepository
} 